import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。
 * User: 15085202591
 * Date: 2022-11-05
 * Time: 20:46
 */
public class SingleNum {
    public static int single(int[] array){
        int ret = 0;
        for (int i = 0; i < array.length; i++) {
            ret ^= array[i];
        }
        return ret;
    }
    public static void main(String[] args) {
        //使用异或的方法，用一个0依次异或整个数组，0异或一个整数还是得到这个整数(最优方法)
        int[] array = new int[]{1,2,3,4,5,1,2,3,4,5,7};
        System.out.println(Arrays.toString(array));
        System.out.print("只出现一次的数字为：");
        int ret = single(array);
        System.out.println(ret);
    }
}
